package com.mfl.service;

import com.mfl.common.PageResult;
import com.mfl.pojo.dto.CourseCategoryDTO;
import com.mfl.pojo.dto.CourseCategoryPageQueryDTO;
import com.mfl.pojo.vo.CourseCategoryVO;

import java.util.List;

public interface CourseCategoryService {
    /**
     * 新增课程分类
     * @param courseCategoryDTO
     */
    void insert(CourseCategoryDTO courseCategoryDTO);

    /**
     * 分页查询课程分类
     * @param courseCategoryPageQueryDTO
     * @return
     */
    PageResult pageQuery(CourseCategoryPageQueryDTO courseCategoryPageQueryDTO);

    /**
     * 批量删除课程分类
     * @param ids
     */
    void batchDelete(List<Integer> ids);

    /**
     * 修改课程分类状态
     * @param status
     * @param id
     */
    void updateStatus(Integer status, Integer id);

    /**
     *  根据课程分类id查询课程分类
     * @param id
     * @return
     */
    CourseCategoryVO getByCourseCategoryId(int id);

    /**
     * 修改课程分类
     * @param courseCategoryDTO
     */
    void update(CourseCategoryDTO courseCategoryDTO);

    /**
     * 查询所有启用的课程分类
     * @return
     */
    List<CourseCategoryVO> getAll();
}
